This invention generally relates to a programmable logic controller (PLC), and more particularly to a multi-processor based PLC and a method for operating the multi-processor based PLC.
Programmable logic controllers are widely used in various industries for logic control, sequence control, motion control, process control, distributed system control and so on. A programmable logic controller (PLC) generally has one or more processors, a memory, and a plurality of input/output (IO) modules coupled to devices. The processors are the heart of the PLC and responsible for many PLC functions, such as input scanning, logic solving and output scanning. It is also noted that there may be multiple processors associated with each PLC function. Therefore, choosing suitable processors help to achieve a PLC with high performance.
The duration of a sweep cycle and the speed of logic solving are two parameters typically used to measure the efficiency of a PLC. FIG. 1 schematically shows a sweep cycle of a conventional PLC 100. The PLC 100 typically includes multiple PLC functions such as input scanning, logic solving, and output scanning. Besides input scanning, logic solving and output scanning, other PLC functions may be included depending on the application. All PLC functions are typically carried out in serial sequence wherein each function is processed in its entirety before proceeding to another function. The subsequent un-processed PLC functions thus remain in a waiting stage or queue until the prior function is finished. Accordingly, the duration of the total sweep cycle 6 is the sum of the durations of all individual cycle times 1, 2, 3, 4 and 5 of the PLC functions as well as any time in-between the respective cycle times 7. The serial processing of the individual PLC functions results in a lower efficiency of the PLC.
Therefore, there is a need for an improved PLC with high efficiency to meet practical requirements and applications.